using System;
using System.Data;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace MPR.Poker.Model.SYS
{
    public class SYS_TournamentStepTable
    {
        private List<SYS_TournamentStepTableMember> m_lstTournamentSTM = new List<SYS_TournamentStepTableMember>();

        #region Member
        private Int64 m_IDSys = 0;
        private string m_StepTableID = string.Empty;
        private string m_ImageUrl = string.Empty;
        private int m_TournamentIDSys = 0;
        private Int64 m_TournamentStepIDSys = 0;
        private int m_CurrentPlayerNumber = 0;        
        private bool m_Islocked = false;
        private bool m_IsPaid = false;
        private string m_Note = string.Empty;
        private int m_OrderIndex = 0;
        private bool m_IsDeleted = false;
        private DateTime? m_DeletedDate;
        #endregion
        #region Properties
        /// <summary>
        /// IDSys
        /// 
        /// </summary>
        [Key, DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public Int64 IDSys
        {
            get { return m_IDSys; }
            set { m_IDSys = value; }
        }
        /// <summary>
        /// StepTableID
        /// 
        /// </summary>
        public string StepTableID
        {
            get { return m_StepTableID; }
            set { m_StepTableID = value; }
        }
        /// <summary>
        /// ImageUrl
        /// 
        /// </summary>
        public string ImageUrl
        {
            get { return m_ImageUrl; }
            set { m_ImageUrl = value; }
        }
        /// <summary>
        /// TournamentIDSys
        /// 
        /// </summary>
        public int TournamentIDSys
        {
            get { return m_TournamentIDSys; }
            set { m_TournamentIDSys = value; }
        }
        /// <summary>
        /// TournamentStepIDSys
        /// 
        /// </summary>
        public Int64 TournamentStepIDSys
        {
            get { return m_TournamentStepIDSys; }
            set { m_TournamentStepIDSys = value; }
        }
        /// <summary>
        /// CurrentPlayerNumber
        /// Số người chơi hiện tại
        /// </summary>
        public int CurrentPlayerNumber
        {
            get { return m_CurrentPlayerNumber; }
            set { m_CurrentPlayerNumber = value; }
        }
        /// <summary>
        /// Islocked
        /// 
        /// </summary>
        public bool Islocked
        {
            get { return m_Islocked; }
            set { m_Islocked = value; }
        }
        /// <summary>
        /// IsPaid
        /// Đã khóa
        /// </summary>
        public bool IsPaid
        {
            get { return m_IsPaid; }
            set { m_IsPaid = value; }
        }
        /// <summary>
        /// Note
        /// Ghi chú
        /// </summary>
        public string Note
        {
            get { return m_Note; }
            set { m_Note = value; }
        }
        /// <summary>
        /// OrderIndex
        /// Thứ tự
        /// </summary>
        public int OrderIndex
        {
            get { return m_OrderIndex; }
            set { m_OrderIndex = value; }
        }
        /// <summary>
        /// IsDeleted
        /// Đã thanh toán
        /// </summary>
        public bool IsDeleted
        {
            get { return m_IsDeleted; }
            set { m_IsDeleted = value; }
        }
        /// <summary>
        /// DeletedDate
        /// Xóa
        /// </summary>
        public DateTime? DeletedDate
        {
            get { return m_DeletedDate; }
            set { m_DeletedDate = value; }
        }

        [NotMapped]
        public List<SYS_TournamentStepTableMember> TournamentSTMList
        {
            get { return m_lstTournamentSTM; }
            set { m_lstTournamentSTM = value; }
        }

        #endregion
        #region Constructor
        public SYS_TournamentStepTable()
        {
        }
        #endregion
        #region Column Names
        public const String colIDSys = "IDSys";
        public const String colStepTableID = "StepTableID";
        public const String colImageUrl = "ImageUrl";
        public const String colTournamentIDSys = "TournamentIDSys";
        public const String colTournamentStepIDSys = "TournamentStepIDSys";
        public const String colCurrentPlayerNumber = "CurrentPlayerNumber";
        public const String colIslocked = "Islocked";
        public const String colIsPaid = "IsPaid";
        public const String colIsDeleted = "IsDeleted";
        public const String colDeletedDate = "DeletedDate";
        #endregion
    }
}
